1. Field of the Invention
The present invention relates generally to the field of archiving information related to telephone numbers. More specifically, the present invention relates to determining an index based on a telephone number with which to store information related to that telephone number.
2. Background of the Invention
Archiving or storing information related to telephone numbers is required for telephone companies to manage their businesses. Whether stored in hardcopy or electronic form, the information must be readily accessible to a telephone company so that it can properly bill customers, keep track of and respond to subscriber problems and complaints, maintain statistics related to quality of service and obtain or determine other information about the services it provides to its subscribers.
Due to the vast number of telephone numbers that exist, storage of this information in hardcopy form quickly becomes unwieldy in terms of both storage and retrieval. Large storerooms are required to store the huge volumes of paper that contain the information. These storerooms are expensive to maintain and difficult to manage efficiently and even more difficult to use for information retrieval.
As a result, the information is usually stored in electronic form. The information itself can include any information related to a telephone number. For example, the information can be stored in a telephone account for a particular telephone number. Such telephone account information generally includes a telephone account number, the telephone number, the name and address of the subscriber, service information such as the services to which the subscriber subscribes, billing information and service call history for the subscriber.
The information can also be information that is stored for use in analyzing telephone calls. For example, information commonly found in a call detail record (CDR) can be used for this purpose. This information includes the calling and called party telephone numbers, the time of the call, information related to the switch handling the call, the duration of the call and other information related to the call. As described in co-pending U.S. application Ser. No. 10/094,640, “System and Method For Managing CDR Information,” to R. Cerami et al., file Mar. 12, 2002 (the “'640 application”) which h is incorporated by reference herein in its entirety, the CDRs can be analyzed to provide numerous statistics related to the services provided by the telephone company.
In some cases, the information relates to a condition or status of the telephone number. For example, the information can be in the form of one or more flags corresponding to a particular service or feature that is provided by the telephone company, or to a condition of a telephone. These flags can be stored as bits in bytes or words stored in computer memory. A flag is set if the subscriber subscribes to the service corresponding to the flag or the telephone condition exists, and is not set if the subscriber does not subscribe to the telephone service corresponding to the flag or the telephone condition does not exist.
Regardless of the kind of information associated with a telephone number that is stored, it is desirable to be able to efficiently access that information. Conventionally, information related to a telephone number is stored for reference by an account number. Retrieval of the information is relatively straightforward. For example, a database lookup based on account number can be used to retrieve or store the information.
However, if all that is known is the telephone number, storage and retrieval of information related to the telephone company is more difficult. This is because conventional access mechanisms generally use the entire telephone number as an index to obtain information related to the telephone number. One problem with storing information about telephone numbers using the entire telephone number as an index is the large number of storage elements that are required. For example, with 10-digit telephone numbers as are used in the United States, ten billion (1010) storage elements are required to be able to store information for each possible telephone number. Currently, this amount of storage is not readily available in RAM. While the storage could be provided using one or more disks, this would be a slow process due to the numerous disk accesses required to access the information related to the telephone numbers. The problem is magnified in contexts where the information relating to the telephone numbers is accessed more often, for example, in the analysis contexts of the '640 application described above.